function test() {
    alert('程序猿节快乐！');
}

$(function () {
    $("#register").click(function () {
        /**
         * 先进行前端校验。如果这些校验一一通过，则传到后端；否则不传，这样可在用户多的情况下减轻服务器压力。
         * 一层一层判断，当上一层通过后，才到这一层。
         */
        if (validate()) {
            //获取参数
            var para = {
                username: $("#username").val(),
                phone: $("#phone").val(),
                code: $("#input_phone_code").val(),
                pwd: $("#pwd").val()
            };
            //ajax
            $.ajax({
                url: '/yuepai/user/register.action',
                type: 'post',
                data: para,
                dataType: 'json',
                success: function (res) {
                    console.log(res);
                    if (res.status == 200) {
                        console.log("成了！");
                        window.location.href = "/yuepai/user/login";
                    } else if (res.status == 201) {
                        alert(res.message);
                    }
                },
                error: function (res) {
                    console.log(res + '\n紧急呼叫程序猿！');
                }
            });
        }
    });
});


//获取手机验证码
function judgePhoneAndGetCode() {
    var phone = $("#phone").val();
    if (phone == null || phone == "") {
        alert('手机号不能为空！');
        return false;
    }
    $.ajax({
        url: '/yuepai/user/getPhoneCode.action',
        type: 'post',
        data: {
            phone: phone,
            templateId: 0  // 短信：注册验证码模板
        },
        dataType: 'json',
        success: function (res) {
            if (res.status == 200) {
                alert('发送成功*_*  请注意查收*_*');
            } else {
                alert(res.message);
                return false;
            }
        },
        error: errorFun
    });
    return true;
}


var code; //在全局定义验证码

function createCode() {
    code = "";
    var codeLength = 4;//验证码的长度
    var checkCode = document.getElementById("code");
    var random = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',
        'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');//随机数
    for (var i = 0; i < codeLength; i++) {//循环操作
        var index = Math.floor(Math.random() * 36);//取得随机数的索引（0~35）
        code += random[index];//根据索引取得随机数加到code上
    }
    checkCode.value = code;//把code值赋给验证码
}
//校验验证码
function validate() {

    var pwd = document.getElementById("pwd").value;
    var retryPwd = document.getElementById("retryPwd").value;
    if (pwd.length < 8) {
        alert("密码至少为8位！");
        return false;
    }
    else if (pwd != retryPwd) {
        alert("输入的两次密码不同！");
        return false;
    }
    var inputCode = document.getElementById("inputCode").value.toUpperCase(); //取得输入的验证码并转化为大写
    if (inputCode.length == 0) { //若输入的验证码长度为0
        alert("请输入验证码！"); //则弹出请输入验证码
        return false;
    } else if (inputCode != code) { //若输入的验证码与产生的验证码不一致时
        alert("验证码输入错误！@_@"); //则弹出验证码输入错误
        createCode();//刷新验证码
        document.getElementById("inputCode").value = "";//清空文本框
        return false;
    }
    return true;
}



//错误的回调函数
function errorFun(res) {
    console.log(res.message + '\n遇到bug啦！   紧急呼叫程序猿geigei!');
}

//回车键登陆
$(function () {
    $(document).keydown(function (e) {
        if (e.keyCode === 13) {
            $("#register").click();
        }
    });
});



//---实现获取验证码按钮被点击后出现倒计时功能，且按钮在此期间不可用  start---
$(function () {
    //加载刷新事件
    load($("#phoneCode"));
    //点击事件
    $("#phoneCode").click(function () {
        time($(this));
    })
})
function time(obj) {
    var wait = 60;
    setLocalDelay(wait);
    if (wait == 0) {
        obj.attr("disabled", false);
        obj.html("获取验证码")
        setLocalDelay(wait);
    } else {
        var timer = setInterval(function () {
            if (wait > 0) {
                wait--;
                obj.attr("disabled", true);
                obj.html("剩余(" + wait + ")秒")
                setLocalDelay(wait);
            } else {
                clearInterval(timer);
                obj.attr("disabled", false);
                obj.html("获取验证码")
            }
        }, 1000);
    }
}
function load(obj) {
    //获取缓存中的值
    var timers = getLocalDelay();
    if (timers.lastname == null || timers.lastname == 0) {
        obj.html("获取验证码")
        return;
    }
    obj.html("剩余(" + timers.lastname + ")秒")
    var timer = setInterval(function () {
        if (timers.lastname > 0) {
            timers.lastname--;
            obj.attr("disabled", true);
            obj.html("剩余(" + timers.lastname + ")秒")
            setLocalDelay(timers.lastname);
        } else {
            clearInterval(timer);
            obj.attr("disabled", false);
            obj.html("获取验证码")
        }
    }, 1000);
}
function setLocalDelay(time) {
    //location.href作为页面的唯一标识，可能一个项目中会有很多页面需要获取验证码。
    localStorage.setItem("lastname" + location.href, time);
}
function getLocalDelay() {
    var LocalDelay = {};
    LocalDelay.lastname = localStorage.getItem("lastname" + location.href);
    return LocalDelay;
}
//---按钮倒计时  end ---

//页面背景动画效果
"use strict";
var html = document.documentElement;
var deg = 0;
var tick = function tick() {
    html.style.background = "background linear-gradient(" + deg++ +"deg, #e484be, #FE5457)";
    requestAnimationFrame(tick);
};
requestAnimationFrame(tick);